home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Languages / MPW Oberon 2.1168 / OInterfaces / OCEStandardDirectory.mod < prev    next >
Encoding:
Text File  |  1995-08-10  |  21.3 KB  |  587 lines  |  [TEXT/MPS ]

  1. (*
  2.      File:        OCEStandardDirectory.mod
  3.  
  4.      Contains:    Apple Open Collaboration Environment Standard Directory Interfaces.
  5.  
  6.      Version:    Technology:    AOCE Toolbox 1.02
  7.                  Package:    Universal Interfaces 2.1ß1 in “MPW Prerelease” on ETO #17
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs.applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. *)
  19.  
  20. (*$TAGS-*)
  21. (*$CALLING PASCAL*)
  22. MODULE OCEStandardDirectory;
  23.  
  24. IMPORT SYSTEM, Types, Quickdraw, Icons, Events, Files, OCE, OCEAuthDir;
  25.  
  26. (* $PUSH*)
  27. (* $ALIGN MAC68K*)
  28. (* $LibExport+*)
  29.  
  30. CONST
  31.     kSDPNewPanel*                = 100;
  32.     kSDPGetNewPanel*                = 101;
  33.     kSDPDisposePanel*            = 102;
  34.     kSDPHidePanel*                = 103;
  35.     kSDPShowPanel*                = 104;
  36.     kSDPEnablePanel*                = 105;
  37.     kSDPUpdatePanel*                = 106;
  38.     kSDPMovePanel*                = 107;
  39.     kSDPSizePanel*                = 108;
  40.     kSDPOpenSelectedItem*        = 109;
  41.     kSDPGetPanelSelectionState*    = 110;
  42.     kSDPGetPanelSelection*        = 111;
  43.     kSDPSetPath*                    = 112;
  44.     kSDPPanelEvent*                = 113;
  45.     kSDPGetPanelSelectionSize*    = 114;
  46.     kSDPSetIdentity*                = 115;
  47.     kSDPSelectString*            = 116;
  48.     kSDPGetPathLength*            = 117;
  49.     kSDPGetPath*                    = 118;
  50.     kSDPSetFocus*                = 119;
  51.     kSDPSetPanelBalloonHelp*        = 120;
  52.     kSDPInstallPanelBusyProc*    = 121;
  53.     kSDPPromptForID*                = 904;
  54.     kSDPNewFindPanel*            = 2300;
  55.     kSDPDisposeFindPanel*        = 2301;
  56.     kSDPStartFind*                = 2302;
  57.     kSDPStopFind*                = 2303;
  58.     kSDPFindPanelEvent*            = 2304;
  59.     kSDPDrawFindPanel*            = 2305;
  60.     kSDPShowFindPanel*            = 2306;
  61.     kSDPHideFindPanel*            = 2307;
  62.     kSDPMoveFindPanel*            = 2308;
  63.     kSDPEnableFindPanel*            = 2309;
  64.     kSDPSetFindPanelFocus*        = 2310;
  65.     kSDPGetFindPanelState*        = 2311;
  66.     kSDPGetFindPanelSelectionSize* = 2312;
  67.     kSDPGetFindPanelSelection*    = 2313;
  68.     kSDPSetFindPanelBalloonHelp*    = 2314;
  69.     kSDPSetFindIdentity*            = 2315;
  70.     kSDPInstallFindPanelBusyProc* = 2316;
  71.     kSDPGetIconByType*            = 1024;
  72.     kSDPGetDSSpecIcon*            = 1025;
  73.     kSDPGetCategories*            = 1026;
  74.     kSDPGetCategoryTypes*        = 1027;
  75.     kSDPResolveAliasFile*        = 3700;
  76.     kSDPResolveAliasDSSpec*        = 3701;
  77.     kSDPRepairPersonalDirectory*    = 6700;
  78. (* Collaboration Package Gestalts. *)
  79.     gestaltSDPStandardDirectoryVersion* = LONG("sdvr");
  80.     gestaltSDPFindVersion*        = LONG("dfnd");
  81.     gestaltSDPPromptVersion*        = LONG("prpv");
  82.  
  83.     genericDirectoryIconResource* = -16721;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  84.     genericLockedDirectoryIconResource* = -16716;                (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  85.     genericRecordIconResource*    = -16722;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  86.     genericAttributeIconResource* = -16723;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  87.     genericTemplateIconResource*    = -16746;                        (* icl8, icl4, ICN#, ics#, ics4, ics8 *)
  88.  
  89. (* standard icon suites *)
  90.     directoryFolderIconResource*    = -16720;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  91.     lockedDirectoryFolderIconResource* = -16719;                    (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  92.     personalDirectoryIconResource* = -16718;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  93.     directoriesIconResource*        = -16717;                        (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  94.     preferredPersonalDirectoryIconResource* = -16724;            (* icl8, icl4, ICN#, ics#, ics4, ics8, sicn  *)
  95.  
  96. (* icon IDs for spinning arrows *)
  97.     kFirstSpinnerIcon*            = -16745;
  98.     kLastSpinnerIcon*            = -16738;
  99.  
  100. (* resource types *)
  101.     kSDPPanelResourceType*        = LONG("panl");
  102.     kSDPFindPanelResourceType*    = LONG("find");
  103.  
  104. (* Standard FindPanel resource *)
  105.     kStandardFindLayout*            = -16700;
  106.  
  107. (* Prompt For Identity structures *)
  108.     kSDPGuestBit*                = 0;
  109.     kSDPSpecificIdentityBit*        = 1;
  110.     kSDPLocalIdentityBit*        = 2;
  111.  
  112. (* Values of SDPIdentityKind *)
  113.     kSDPGuestMask*                = ASH(1,kSDPGuestBit);
  114.     kSDPSpecificIdentityMask*    = ASH(1,kSDPSpecificIdentityBit);
  115.     kSDPLocalIdentityMask*        = ASH(1,kSDPLocalIdentityBit);
  116.  
  117.     
  118. TYPE
  119.     SDPIdentityKind* = INTEGER;
  120.  
  121.  
  122. CONST
  123.     kSDPSuggestionOnly*            = 0;
  124.     kSDPRestrictToDirectory*        = 1;
  125.     kSDPRestrictToRecord*        = 2;
  126.  
  127.     
  128. TYPE
  129.     SDPLoginFilterKind* = INTEGER;
  130.  
  131. (* Panel Structures *)
  132. (*
  133. While the panel is in operation, four selection states may exist.
  134.     1) kSDPNothingSelected means nothing is selected.
  135.     2) kContainSelected means a volume, folder, catalog, dnode, or PAB is selected.
  136.     3) kSDPLockedContainerSelected means one of the above, but no access privledges.
  137.     4) kSDPRecordSelected means that a record is currently selected.
  138. *)
  139. (* Values of SDPSelectionState *)
  140.  
  141. CONST
  142.     kSDPNothingSelected*            = 0;
  143.     kSDPLockedContainerSelected*    = 1;
  144.     kSDPContainerSelected*        = 2;
  145.     kSDPRecordSelected*            = 3;
  146.     kSDPRecordAliasSelected*        = 4;
  147.     kSDPContainerAliasSelected*    = 5;
  148.  
  149.     
  150. TYPE
  151.     SDPSelectionState* = INTEGER;
  152.  
  153. (*
  154. This type informs the caller of the action the user took, either as the result
  155. of an event (as returned by SDPPanelEvent) or when SDPOpenSelectedItem is called.
  156.  
  157. kSDPProcessed means that the event (or call to SDPOpenSelectedItem) resulted in no
  158. state change.
  159.  
  160. kSDPSelectedAnItem indicates that the user wants to select the currently-hilited
  161. record. This is returned, for example, when a user double-clicks on a record.
  162.  
  163. kSDPChangedSelection implies that the user clicked on a new item (which may mean
  164. that no item is selected).
  165. *)
  166. (* Values of SDPPanelState *)
  167.  
  168. CONST
  169.     kSDPProcessed*                = 0;
  170.     kSDPSelectedAnItem*            = 1;
  171.     kSDPChangedSelection*        = 2;
  172.  
  173.     
  174. TYPE
  175.     SDPPanelState* = INTEGER;
  176.  
  177. (*
  178. Your application may read any of the fields in a SDPPanelRecord, but it should
  179. use the appropriate routines to make changes to the records with the exception
  180. of the refCon field which your application may read or write at will.  Private
  181. information follows the SDPPanelRecord, so the handle must not be re-sized.
  182. *)
  183.     SDPPanelRecord* = RECORD
  184.         bounds*:                    Types.Rect;
  185.         visible*:                BOOLEAN;
  186.         enabled*:                BOOLEAN;
  187.         focused*:                BOOLEAN;
  188.         padByte*:                Types.SInt8; (* Types.Byte *)
  189.         identity*:                OCEAuthDir.AuthIdentity;
  190.         refCon*:                    LONGINT;
  191.         listRect*:                Types.Rect;
  192.         popupRect*:                Types.Rect;
  193.         numberOfRows*:            INTEGER;
  194.         rowHeight*:                INTEGER;
  195.         pabMode*:                BOOLEAN;
  196.         filler1*:                BOOLEAN;
  197.     END;
  198.  
  199.     SDPPanelPtr* = POINTER TO SDPPanelRecord;
  200.     SDPPanelHandle* = HANDLE TO SDPPanelRecord (*ΔΔ POINTER TO SDPPanelPtr*);
  201.  
  202.     PanelBusyProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (Panel: SDPPanelHandle; busy: BOOLEAN);
  203.     PanelBusyUPP* = Types.UniversalProcPtr;
  204.  
  205. CONST
  206.     uppPanelBusyProcInfo* = $000001C0; (* PROCEDURE (4 byte param, 1 byte param); *)
  207.  
  208. PROCEDURE NewPanelBusyProc*(userRoutine: PanelBusyProcPtr): PanelBusyUPP;
  209.     (*$IF NOT GENERATINGCFM *)
  210.     INLINE PASCAL $2E9F;
  211.     (*$END*)
  212.  
  213. PROCEDURE CallPanelBusyProc*(Panel: SDPPanelHandle; busy: BOOLEAN; userRoutine: PanelBusyUPP);
  214.     (*$IF NOT GENERATINGCFM*)
  215.     INLINE PASCAL $205F, $4E90;
  216.     (*$END*)
  217.     
  218. TYPE
  219.     PanelBusyProc* = PanelBusyUPP;
  220.  
  221. (* Find Panel Structures *)
  222.  
  223. CONST
  224.     kSDPItemIsSelectedBit*        = 0;
  225.     kSDPFindTextExistsBit*        = 1;
  226.  
  227. (* Values of SDPFindPanelState *)
  228.     kSDPItemIsSelectedMask*        = ASH(1,kSDPItemIsSelectedBit);
  229.     kSDPFindTextExistsMask*        = ASH(1,kSDPFindTextExistsBit);
  230.  
  231.     
  232. TYPE
  233.     SDPFindPanelState* = INTEGER;
  234.  
  235. (* Values of SDPFindPanelFocus *)
  236.  
  237. CONST
  238.     kSDPFindPanelNoFocus*        = 0;
  239.     kSDPFindPanelListHasFocus*    = 1;
  240.     kSDPFindPanelTextHasFocus*    = 2;
  241.  
  242.     
  243. TYPE
  244.     SDPFindPanelFocus* = INTEGER;
  245.  
  246.     SDPFindPanelRecord* = RECORD
  247.         upperLeft*:                Types.Point;
  248.         visible*:                BOOLEAN;
  249.         enabled*:                BOOLEAN;
  250.         nowFinding*:                BOOLEAN;
  251.         padByte*:                Types.SInt8; (* Types.Byte *)
  252.         currentFocus*:            SDPFindPanelFocus;
  253.         identity*:                OCEAuthDir.AuthIdentity;
  254.         simultaneousSearchCount*: INTEGER;
  255.         refCon*:                    LONGINT;
  256.     END;
  257.  
  258.     SDPFindPanelPtr* = POINTER TO SDPFindPanelRecord;
  259.     SDPFindPanelHandle* = HANDLE TO SDPFindPanelRecord(*ΔΔ POINTER TO SDPFindPanelPtr*);
  260.  
  261. (* Values of SDPFindPanelResult *)
  262.  
  263. CONST
  264.     kSDPSelectedAFindItem*        = 0;
  265.     kSDPFindSelectionChanged*    = 1;
  266.     kSDPFindCompleted*            = 2;
  267.     kSDPTextStateChanged*        = 3;
  268.     kSDPFocusChanged*            = 4;
  269.     kSDPSelectionAndFocusChanged* = 5;
  270.     kSDPMenuChanged*                = 6;
  271.     kSDPSelectionAndMenuChanged*    = 7;
  272.     kSDPProcessedFind*            = 8;
  273.  
  274.     
  275. TYPE
  276.     SDPFindPanelResult* = INTEGER;
  277.  
  278.     PackedRStringListHandle* = HANDLE TO OCE.PackedPathName (*ΔΔ POINTER TO PackedPathNamePtr*);
  279.  
  280.     PackedDSSpecHandle* = HANDLE TO OCE.PackedDSSpec (*ΔΔ POINTER TO PackedDSSpecPtr*);
  281.  
  282.     FindPanelBusyProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (findPanel: SDPFindPanelHandle; busy: BOOLEAN);
  283.     FindPanelBusyUPP* = Types.UniversalProcPtr;
  284.  
  285. CONST
  286.     uppFindPanelBusyProcInfo* = $000001C0; (* PROCEDURE (4 byte param, 1 byte param); *)
  287.  
  288. PROCEDURE NewFindPanelBusyProc*(userRoutine: FindPanelBusyProcPtr): FindPanelBusyUPP;
  289.     (*$IF NOT GENERATINGCFM *)
  290.     INLINE PASCAL $2E9F;
  291.     (*$END*)
  292.  
  293. PROCEDURE CallFindPanelBusyProc*(findPanel: SDPFindPanelHandle; busy: BOOLEAN; userRoutine: FindPanelBusyUPP);
  294.     (*$IF NOT GENERATINGCFM*)
  295.     INLINE PASCAL $205F, $4E90;
  296.     (*$END*)
  297.     
  298. TYPE
  299.     FindPanelBusyProc* = FindPanelBusyUPP;
  300.  
  301. (* Prompt For Identity Routines *)
  302.  
  303. PROCEDURE SDPPromptForID*(VAR id: OCEAuthDir.AuthIdentity; guestPrompt: Types.ConstStr255Param; specificIDPrompt: Types.ConstStr255Param; localIDPrompt: Types.ConstStr255Param; (*CONST*)VAR recordType: OCE.RString; permittedKinds: SDPIdentityKind; VAR selectedKind: SDPIdentityKind; (*CONST*)VAR loginFilter: OCE.RecordID; filterKind: SDPLoginFilterKind): Types.OSErr;
  304.     (*$IF NOT GENERATINGCFM*)
  305.     INLINE PASCAL $203C, 16, 904, $AA5D;
  306.     (*$END*)
  307. (*
  308. SDPNewPanel creates a new panel. You supply the window in which the panel
  309. is to live, the bounds for the panel (which includes both the menu and the list),
  310. whether or not the panel is to be initially visible, the initial RLI (nil for
  311. catalogs and volumes), the types of records that will be shown (only a single
  312. (non-nil) type which may contain wildcards), the identity by which to browse
  313. (for access control reasons), and a refCon which is  available to the caller.
  314. *)
  315. PROCEDURE SDPNewPanel*(VAR newPanel: SDPPanelHandle; window: Quickdraw.WindowPtr; (*CONST*)VAR bounds: Types.Rect; visible: BOOLEAN; enabled: BOOLEAN; (*CONST*)VAR initialRLI: OCE.PackedRLI; (*CONST*)VAR typesList: OCE.RStringPtr; typeCount: LONGINT; identity: OCEAuthDir.AuthIdentity; enumFlags: OCEAuthDir.DirEnumChoices; matchTypeHow: Types.ByteParameter; refCon: LONGINT): Types.OSErr;
  316.     (*$IF NOT GENERATINGCFM*)
  317.     INLINE PASCAL $203C, 21, 100, $AA5D;
  318.     (*$END*)
  319. (*
  320. SDPSetIdentity Sets the identity used for browsing.  NOTE*: This call is likely to go
  321. away if the new authentication scheme works.
  322. *)
  323. PROCEDURE SDPSetIdentity*(panel: SDPPanelHandle; identity: OCEAuthDir.AuthIdentity): Types.OSErr;
  324.     (*$IF NOT GENERATINGCFM*)
  325.     INLINE PASCAL $203C, 4, 115, $AA5D;
  326.     (*$END*)
  327. (*
  328. SDPGetNewPanel is similar to SDPNewPanel above, except it takes a resource id of a
  329. LONG("panl") resource.
  330. *)
  331. PROCEDURE SDPGetNewPanel*(VAR newPanel: SDPPanelHandle; resourceID: INTEGER; window: Quickdraw.WindowPtr; (*CONST*)VAR initialRLI: OCE.PackedRLI; identity: OCEAuthDir.AuthIdentity): Types.OSErr;
  332.     (*$IF NOT GENERATINGCFM*)
  333.     INLINE PASCAL $203C, 9, 101, $AA5D;
  334.     (*$END*)
  335. (*
  336. Call this when you're completely done with a panel. It deallocates all of the
  337. associated data structures.
  338. *)
  339. PROCEDURE SDPDisposePanel*(panel: SDPPanelHandle): Types.OSErr;
  340.     (*$IF NOT GENERATINGCFM*)
  341.     INLINE PASCAL $203C, 2, 102, $AA5D;
  342.     (*$END*)
  343. (*
  344. If the panel is visible, it makes it invisible by hiding the menu, turning off
  345. drawing of the list, and erasing and  invaling the list's rectangle.
  346. *)
  347. PROCEDURE SDPHidePanel*(panel: SDPPanelHandle): Types.OSErr;
  348.     (*$IF NOT GENERATINGCFM*)
  349.     INLINE PASCAL $203C, 2, 103, $AA5D;
  350.     (*$END*)
  351. (* If the panel is invisible, it makes it visible and draws it. *)
  352. PROCEDURE SDPShowPanel*(panel: SDPPanelHandle): Types.OSErr;
  353.     (*$IF NOT GENERATINGCFM*)
  354.     INLINE PASCAL $203C, 2, 104, $AA5D;
  355.     (*$END*)
  356. (* Disables the list and menu so that it won't accept any commands. *)
  357. PROCEDURE SDPEnablePanel*(panel: SDPPanelHandle; enable: BOOLEAN): Types.OSErr;
  358.     (*$IF NOT GENERATINGCFM*)
  359.     INLINE PASCAL $203C, 3, 105, $AA5D;
  360.     (*$END*)
  361. (*
  362. Move the upper-left-hand corner of the panel to (h,v), given in local coordinates of
  363. the panel's window.
  364. *)
  365. PROCEDURE SDPMovePanel*(panel: SDPPanelHandle; h: INTEGER; v: INTEGER): Types.OSErr;
  366.     (*$IF NOT GENERATINGCFM*)
  367.     INLINE PASCAL $203C, 4, 107, $AA5D;
  368.     (*$END*)
  369. (*
  370. Resizes the panel to have the given width and height (keeping the upper-left-hand
  371. corner in a fixed position).
  372. *)
  373. PROCEDURE SDPSizePanel*(panel: SDPPanelHandle; width: INTEGER; height: INTEGER): Types.OSErr;
  374.     (*$IF NOT GENERATINGCFM*)
  375.     INLINE PASCAL $203C, 4, 108, $AA5D;
  376.     (*$END*)
  377. (*
  378. This routine simulates a double-click on the selected item (if there is no selected
  379. item, then it does nothing), and it returns the result of that "double-click" via the
  380. whatHappened parameter. If a container is selected, then that container will be
  381. opened and kMovedDownTheHierarchy is returned. If, however, the user is at the lowest
  382. level in the hierarchy, then kSDPSelectedAnItem is returned.
  383. *)
  384. PROCEDURE SDPOpenSelectedItem*(panel: SDPPanelHandle; VAR whatHappened: SDPPanelState): Types.OSErr;
  385.     (*$IF NOT GENERATINGCFM*)
  386.     INLINE PASCAL $203C, 4, 109, $AA5D;
  387.     (*$END*)
  388. (*
  389. Returns whether a record is selected, something else is selected, or nothing is
  390. selected.
  391. *)
  392. PROCEDURE SDPGetPanelSelectionState*(panel: SDPPanelHandle; VAR itsState: SDPSelectionState): Types.OSErr;
  393.     (*$IF NOT GENERATINGCFM*)
  394.     INLINE PASCAL $203C, 4, 110, $AA5D;
  395.     (*$END*)
  396. (*
  397. Returns the size of the currently-selected DSSpec, or zero if a record is
  398. not selected.  It is safe to do a NewPtr (SDPGetPanelSelectionSize (...))
  399. *)
  400. PROCEDURE SDPGetPanelSelectionSize*(panel: SDPPanelHandle; VAR dsSpecSize: INTEGER): Types.OSErr;
  401.     (*$IF NOT GENERATINGCFM*)
  402.     INLINE PASCAL $203C, 4, 114, $AA5D;
  403.     (*$END*)
  404. (*
  405. Returns the currently-selected DSSpec, or a zero-lengthed
  406. DSSpec if a record is not selected. It is assumed that the selection
  407. buffer allocated is large enough.
  408. *)
  409. PROCEDURE SDPGetPanelSelection*(panel: SDPPanelHandle; VAR selection: OCE.PackedDSSpec): Types.OSErr;
  410.     (*$IF NOT GENERATINGCFM*)
  411.     INLINE PASCAL $203C, 4, 111, $AA5D;
  412.     (*$END*)
  413. (*
  414. Forces browsing to the specified RLI. If prli is the current RLI, then it does
  415. nothing.
  416. *)
  417. PROCEDURE SDPSetPath*(panel: SDPPanelHandle; (*CONST*)VAR prli: OCE.PackedRLI): Types.OSErr;
  418.     (*$IF NOT GENERATINGCFM*)
  419.     INLINE PASCAL $203C, 4, 112, $AA5D;
  420.     (*$END*)
  421. (*
  422. This is the main driver for the panel.  You should pass all events to SDPPanelEvent
  423. including NULL events.  If you have more than 1 panel, you will need to
  424. call SDPPanelEvent for each panel.  NOTE:  For Update Events you will also need to call
  425. SDPUpdatePanel as described below.
  426. *)
  427. PROCEDURE SDPPanelEvent*(panel: SDPPanelHandle; (*CONST*)VAR theEvent: Events.EventRecord; VAR whatHappened: SDPPanelState): Types.OSErr;
  428.     (*$IF NOT GENERATINGCFM*)
  429.     INLINE PASCAL $203C, 6, 113, $AA5D;
  430.     (*$END*)
  431. (*
  432. SDPUpdatePanel should be called in response to an update event.  Generally you will
  433. have first called BeginUpdate, and pass the windows visRgn as theRgn.  If NULL
  434. is passed for theRgn the entire panel is re-drawn.  NOTE:  Drawing is not cliped to
  435. theRgn, if this is desired, you must first call SetClip.
  436. *)
  437. PROCEDURE SDPUpdatePanel*(panel: SDPPanelHandle; theRgn: Quickdraw.RgnHandle): Types.OSErr;
  438.     (*$IF NOT GENERATINGCFM*)
  439.     INLINE PASCAL $203C, 4, 106, $AA5D;
  440.     (*$END*)
  441. (*
  442. SDPSelectString scrolls and selects the closest matching string at the current
  443. level.  This is the same behavior as if the user typed in the given string.
  444. *)
  445. PROCEDURE SDPSelectString*(panel: SDPPanelHandle; (*CONST*)VAR name: OCE.RString): Types.OSErr;
  446.     (*$IF NOT GENERATINGCFM*)
  447.     INLINE PASCAL $203C, 4, 116, $AA5D;
  448.     (*$END*)
  449. (*
  450. SDPGetPathLength returns the length in bytes required to hold the current path name
  451. in RLI format.  This corresponds to the path name in the popup menu.
  452. *)
  453. PROCEDURE SDPGetPathLength*(panel: SDPPanelHandle; VAR pathNameLength: INTEGER): Types.OSErr;
  454.     (*$IF NOT GENERATINGCFM*)
  455.     INLINE PASCAL $203C, 4, 117, $AA5D;
  456.     (*$END*)
  457. (* SDPGetPath returns the current rli. *)
  458. PROCEDURE SDPGetPath*(panel: SDPPanelHandle; VAR prli: OCE.PackedRLI; VAR dsRefNum: INTEGER): Types.OSErr;
  459.     (*$IF NOT GENERATINGCFM*)
  460.     INLINE PASCAL $203C, 6, 118, $AA5D;
  461.     (*$END*)
  462. (*
  463. SDPSetFocus will draw the focus rectangle or erase the focus rectangle depending upon
  464. the focus boolean.
  465. *)
  466. PROCEDURE SDPSetFocus*(panel: SDPPanelHandle; focus: BOOLEAN): Types.OSErr;
  467.     (*$IF NOT GENERATINGCFM*)
  468.     INLINE PASCAL $203C, 3, 119, $AA5D;
  469.     (*$END*)
  470. (*
  471. SDPSetPanelBalloonHelp allows clients to specify a STR# resource id to use for 
  472. balloon help.  Balloon help is unavailable until this call is made.
  473. *)
  474. PROCEDURE SDPSetPanelBalloonHelp*(panel: SDPPanelHandle; balloonHelpID: INTEGER): Types.OSErr;
  475.     (*$IF NOT GENERATINGCFM*)
  476.     INLINE PASCAL $203C, 3, 120, $AA5D;
  477.     (*$END*)
  478. (*
  479. SDPInstallPanelBusyProc allows clients to install a CB that will be called while
  480. the panel is aynchronously busy.
  481. *)
  482. PROCEDURE SDPInstallPanelBusyProc*(panel: SDPPanelHandle; busyProc: PanelBusyProc): Types.OSErr;
  483.     (*$IF NOT GENERATINGCFM*)
  484.     INLINE PASCAL $203C, 4, 121, $AA5D;
  485.     (*$END*)
  486. PROCEDURE SDPNewFindPanel*(VAR newPanel: SDPFindPanelHandle; window: Quickdraw.WindowPtr; upperLeft: Types.Point; layoutResourceID: INTEGER; visible: BOOLEAN; enabled: BOOLEAN; (*CONST*)VAR typesList: OCE.RStringPtr; typeCount: LONGINT; matchTypeHow: Types.ByteParameter; identity: OCEAuthDir.AuthIdentity; simultaneousSearchCount: INTEGER; initialFocus: SDPFindPanelFocus; refCon: LONGINT): Types.OSErr;
  487.     (*$IF NOT GENERATINGCFM*)
  488.     INLINE PASCAL $203C, 20, 2300, $AA5D;
  489.     (*$END*)
  490. PROCEDURE SDPDisposeFindPanel*(findPanel: SDPFindPanelHandle): Types.OSErr;
  491.     (*$IF NOT GENERATINGCFM*)
  492.     INLINE PASCAL $203C, 2, 2301, $AA5D;
  493.     (*$END*)
  494. PROCEDURE SDPStartFind*(findPanel: SDPFindPanelHandle): Types.OSErr;
  495.     (*$IF NOT GENERATINGCFM*)
  496.     INLINE PASCAL $203C, 2, 2302, $AA5D;
  497.     (*$END*)
  498. PROCEDURE SDPStopFind*(findPanel: SDPFindPanelHandle): Types.OSErr;
  499.     (*$IF NOT GENERATINGCFM*)
  500.     INLINE PASCAL $203C, 2, 2303, $AA5D;
  501.     (*$END*)
  502. PROCEDURE SDPFindPanelEvent*(findPanel: SDPFindPanelHandle; (*CONST*)VAR event: Events.EventRecord; VAR whatHappened: SDPFindPanelResult): Types.OSErr;
  503.     (*$IF NOT GENERATINGCFM*)
  504.     INLINE PASCAL $203C, 6, 2304, $AA5D;
  505.     (*$END*)
  506. PROCEDURE SDPUpdateFindPanel*(findPanel: SDPFindPanelHandle; theRgn: Quickdraw.RgnHandle): Types.OSErr;
  507.     (*$IF NOT GENERATINGCFM*)
  508.     INLINE PASCAL $203C, 4, 2305, $AA5D;
  509.     (*$END*)
  510. PROCEDURE SDPShowFindPanel*(findPanel: SDPFindPanelHandle): Types.OSErr;
  511.     (*$IF NOT GENERATINGCFM*)
  512.     INLINE PASCAL $203C, 2, 2306, $AA5D;
  513.     (*$END*)
  514. PROCEDURE SDPHideFindPanel*(findPanel: SDPFindPanelHandle): Types.OSErr;
  515.     (*$IF NOT GENERATINGCFM*)
  516.     INLINE PASCAL $203C, 2, 2307, $AA5D;
  517.     (*$END*)
  518. PROCEDURE SDPMoveFindPanel*(findPanel: SDPFindPanelHandle; h: INTEGER; v: INTEGER): Types.OSErr;
  519.     (*$IF NOT GENERATINGCFM*)
  520.     INLINE PASCAL $203C, 4, 2308, $AA5D;
  521.     (*$END*)
  522. PROCEDURE SDPEnableFindPanel*(findPanel: SDPFindPanelHandle; enabled: BOOLEAN): Types.OSErr;
  523.     (*$IF NOT GENERATINGCFM*)
  524.     INLINE PASCAL $203C, 3, 2309, $AA5D;
  525.     (*$END*)
  526. PROCEDURE SDPSetFindPanelFocus*(findPanel: SDPFindPanelHandle; newFocus: SDPFindPanelFocus): Types.OSErr;
  527.     (*$IF NOT GENERATINGCFM*)
  528.     INLINE PASCAL $203C, 3, 2310, $AA5D;
  529.     (*$END*)
  530. PROCEDURE SDPGetFindPanelState*(findPanel: SDPFindPanelHandle; VAR itsState: SDPFindPanelState): Types.OSErr;
  531.     (*$IF NOT GENERATINGCFM*)
  532.     INLINE PASCAL $203C, 4, 2311, $AA5D;
  533.     (*$END*)
  534. PROCEDURE SDPGetFindPanelSelectionSize*(findPanel: SDPFindPanelHandle; VAR size: INTEGER): Types.OSErr;
  535.     (*$IF NOT GENERATINGCFM*)
  536.     INLINE PASCAL $203C, 4, 2312, $AA5D;
  537.     (*$END*)
  538. PROCEDURE SDPGetFindPanelSelection*(findPanel: SDPFindPanelHandle; VAR selection: OCE.PackedDSSpec): Types.OSErr;
  539.     (*$IF NOT GENERATINGCFM*)
  540.     INLINE PASCAL $203C, 4, 2313, $AA5D;
  541.     (*$END*)
  542. PROCEDURE SDPSetFindPanelBalloonHelp*(findPanel: SDPFindPanelHandle; balloonHelpID: INTEGER): Types.OSErr;
  543.     (*$IF NOT GENERATINGCFM*)
  544.     INLINE PASCAL $203C, 3, 2314, $AA5D;
  545.     (*$END*)
  546. PROCEDURE SDPSetFindIdentity*(findPanel: SDPFindPanelHandle; identity: OCEAuthDir.AuthIdentity): Types.OSErr;
  547.     (*$IF NOT GENERATINGCFM*)
  548.     INLINE PASCAL $203C, 4, 2315, $AA5D;
  549.     (*$END*)
  550. PROCEDURE SDPInstallFindPanelBusyProc*(findPanel: SDPFindPanelHandle; busyProc: FindPanelBusyProc): Types.OSErr;
  551.     (*$IF NOT GENERATINGCFM*)
  552.     INLINE PASCAL $203C, 4, 2316, $AA5D;
  553.     (*$END*)
  554. PROCEDURE SDPGetIconByType*((*CONST*)VAR recordType: OCE.RString; whichIcons: Icons.IconSelectorValue; VAR iconSuite: Types.Handle): Types.OSErr;
  555.     (*$IF NOT GENERATINGCFM*)
  556.     INLINE PASCAL $303C, 1024, $AA5C;
  557.     (*$END*)
  558. PROCEDURE SDPGetDSSpecIcon*((*CONST*)VAR packedDSSpec: OCE.PackedDSSpec; whichIcons: Icons.IconSelectorValue; VAR iconSuite: Types.Handle): Types.OSErr;
  559.     (*$IF NOT GENERATINGCFM*)
  560.     INLINE PASCAL $303C, 1025, $AA5C;
  561.     (*$END*)
  562. PROCEDURE SDPGetCategories*(VAR categories: PackedRStringListHandle; VAR displayNames: PackedRStringListHandle): Types.OSErr;
  563.     (*$IF NOT GENERATINGCFM*)
  564.     INLINE PASCAL $303C, 1026, $AA5C;
  565.     (*$END*)
  566. PROCEDURE SDPGetCategoryTypes*((*CONST*)VAR category: OCE.RString; VAR types: PackedRStringListHandle): Types.OSErr;
  567.     (*$IF NOT GENERATINGCFM*)
  568.     INLINE PASCAL $303C, 1027, $AA5C;
  569.     (*$END*)
  570. PROCEDURE SDPResolveAliasFile*(fileSpec: Files.FSSpecPtr; resolvedDSSpec: PackedDSSpecHandle; identity: OCEAuthDir.AuthIdentity; mayPromptUser: BOOLEAN): Types.OSErr;
  571.     (*$IF NOT GENERATINGCFM*)
  572.     INLINE PASCAL $203C, 7, 3700, $AA5D;
  573.     (*$END*)
  574. PROCEDURE SDPResolveAliasDSSpec*(theAliasDSSpec: PackedDSSpecHandle; identity: OCEAuthDir.AuthIdentity; mayPromptUser: BOOLEAN): Types.OSErr;
  575.     (*$IF NOT GENERATINGCFM*)
  576.     INLINE PASCAL $203C, 5, 3701, $AA5D;
  577.     (*$END*)
  578. PROCEDURE SDPRepairPersonalDirectory*(VAR pd: Files.FSSpec; showProgress: BOOLEAN): Types.OSErr;
  579.     (*$IF NOT GENERATINGCFM*)
  580.     INLINE PASCAL $203C, 3, 6700, $AA5D;
  581.     (*$END*)
  582.  
  583. (* $ALIGN RESET*)
  584. (* $POP*)
  585.  
  586.  END OCEStandardDirectory.
  587.